Ring based algorithm